package common


type CbSignatory struct {
	// <ext>core:true</ext> 【签署方类型】签署方类型 【传参】 取值范围：COMPANY（组织），PERSONAL（个人）。 
	TenantType string `json:"tenantType"`
	// <ext>core:true</ext> 【签署方名称】签署方名称 【传参】 1、组织签署方需传入工商营业执照上的真实单位名称；个人签署方传入个人真实姓名。 2、最大长度：200（包含）。
	TenantName string `json:"tenantName"`
	// <ext>core:true</ext> 【经办人姓名】经办人姓名 【作用】 1、指定组织签署方的经办人姓名。 2、个人签署方无需传入该参数，将使用tenantName作为签署方姓名。
	ReceiverName string `json:"receiverName,omitempty"`
	// <ext>core:true</ext> 【经办人联系方式】经办人联系方式 【作用】 用于查询用户，作为内部组织签署方的经办人或个人签署方 【传参】 1、可传入用户手机号或者邮箱（个人签署方仅支持传入邮箱） 2、手机号允许使用大陆、港澳台、国际手机号，手机号格式为：区号+空格+手机号，例：852 9xxxxxxx ，大陆手机号可以不传区号。 3、邮箱需传入符合格式的字符串，例：xxxxxxxx@163.com。 4、传入该参数查询用户时，若用户不存在时，则使用传入的联系方式创建新用户，并将该用户加入组织。
	Contact string `json:"contact,omitempty"`
	// <ext>core:true</ext> 【经办人成员编号】经办人成员编号 【传参】 1、当未传入联系方式时，可使用成员编号、第三方业务系统用户id查询用户，作为内部组织签署方的经办人，或个人签署方。 2、成员编号、第三方业务系统用户id均传入时，以成员编号为准。 3、若使用成员编号查询用户，若用户不存在，则将使用传入的成员编号创建新用户，并将该用户加入组织。若查询的用户未绑定邮箱，则报错。
	ReceiverNumber string `json:"receiverNumber,omitempty"`
	// <ext>core:true</ext> 【经办人第三方业务系统用户id】经办人第三方业务系统用户id 【作用】 1、当未传入联系方式时，可使用成员编号、第三方业务系统用户id查询用户，作为组织签署方的经办人，或个人签署方。 2、成员编号、第三方业务系统用户id均传入时，以成员编号为准。 3、使用该参数查询用户，若用户不存在或用户未绑定邮箱时，将会报错提示。
	OpenUserId string `json:"openUserId,omitempty"`
	// <ext>core:true</ext> 【业务系统标识】业务系统标识 【作用】 1：根据第三方业务系统用户id查询系统成员/用户信息时使用 2：涉及到多套业务系统集成且不同系统间第三方业务系统用户id可能重复时需要传入该参数
	SystemCode string `json:"systemCode,omitempty"`
	// <ext>core:true;format:email;deprecated:true</ext> 【经办人邮箱】经办人邮箱 【作用】 当传入contact且传参为手机号时，若该接收人未绑定邮箱，可传入该参数为接收人绑定邮箱。
	Email string `json:"email,omitempty"`
	// <ext>core:true</ext> 【签署方编号】签署方编号  【作用】 支持业务系统传入签署方唯一标识，方便后续通过此唯一标识定位签署方，一份电子签约文件中每个签署方的编号不允许重复。
	SignatoryNo string `json:"signatoryNo,omitempty"`
	// <ext>core:true;format:number</ext> 【签署方签署顺序】签署方签署顺序 【传参】 1、需按顺序签署，可分别设置签署方的serialNo为1,2,3; 2、目前暂不支持无序签署 3、签署方传入了签署顺序，以传入的为准，未传入顺序的签署方将按添加的顺序生成serialNo，例如有3个签署方，则按添加顺序将serialNo设置为1,2,3 【特殊说明】 1、用印流程的签署方为非预设，或预设但允许发起时添加/删除预设签署方，则此参数传入的签署顺序生效 2、用印流程中预设了签署方且不允许发起时添加/删除预设签署方，则传入的签署方顺序将无效，将按照用印流程中预设顺序进行签署
	SerialNo *int64 `json:"serialNo"`
	// <ext>core:true</ext> 【文件查看密码】文件查看密码 【作用】 1、签署用户收到待签文件，需输入此处设置的密码才可查看并签署文件 2、仅针对个人签署方生效 【传参】 6~20位字符
	AdobeSignPassword string `json:"adobeSignPassword,omitempty"`
	// <ext>core:true</ext> 【签署节点】签署节点 【作用】 即组织签署方下可设置不同的签署节点进行签署，如个人签署、个人审批 【特殊说明】 个人签署节点可同时签署个人签名和单位印章（但都是以该节点签署人个人名义签署）
	Actions []CbAction `json:"actions,omitempty"`
	// 【消息提醒】消息提醒 【作用】 轮到该签署方签署时，该签署方下所有签署人是否发送消息通知 【传参】 1、取值范围：true（发送），false（不发送）；不传值默认为：true（发送）。 2、若用印流程中关闭消息通知，则该参数传参无效，将不发送消息通知
	Remind *bool `json:"remind,omitempty"`
	// 【签署方语言】签署方语言 【作用】 指定签署方登录系统时，默认的系统页面语言环境 【传参】 取值范围：zh_CN（中文），en_US（英文）；不传值默认为：zh_CN（中文）。
	Language string `json:"language,omitempty"`
	// 【是否添加员工】是否添加员工 【作用】 内部组织签署方中传入未加入组织经办人或签署节点的签署人时，是否加入对应的签署方所在法人单位 【传参】 取值范围：true（添加），false（不添加）；不传值默认为：true（添加）。
	AddEmployee *bool `json:"addEmployee,omitempty"`
}
